Universal Product Code (UPC) encoding is a far reaching program that was first developed for the grocery industry to help identify and control thousands of different items found on supermarket shelves. The coding is carried out by printing "machine readable" code symbols on the labels of consumer packages. Then, at the supermarket checkstand, special optical/laser scanning devices are provided which "read" the code symbols and automatically carry out price lookup and inventory control steps with the final objective being a completely automated checkstand.
Besides consumer packages, UPC symbols are also intended for use on shipping cases and containers, and for in-pack and mail coupons for premiums or discounts. Moreover, even though UPC coding was started for groceries, there are provisions for expanding its use into drugs and health related items, general merchandising and the mass distribution industry.
The standard UPC symbol is in the form of a series of parallel light spaces and dark bars of different widths. In this form, the UPC symbol is referred to as a linear bar code symbol with numerical OCR-2 type font equivalents of the light spaces and dark bars printed at the bottom of the symbol. The overall shape of the symbol is rectangular and each different arrangement of the light spaces and dark bars represents a particular and specific numerical code.
The code symbol was designed primarily for the grocery industry which adopted a numbering system of 10 numerical characters. However, the symbol also includes a certain amount of growth capacity for longer codes (i.e., 11 and 12 characters) to facilitate compatibility in other industries in the future. The symbol even provides a format capable of encoding from 13 to 30 characters to promote compatibility with the needs of department stores.
The 10 digits in the grocery code include 5 which identify the manufacturer, and 5 which identify the product itself. In addition to the 10 digits, the symbol also contains a UPC number system character, two left and right guard bars, a pair of center bars, and a modulo check character. For any given 10 digit code, there are 30 dark bars and 29 light spaces in each symbol with a light margin on each side. Each digit of the code is encoded by 2 dark bars and 2 light spaces, and is called an (encoded) character. Each character is made up of 7 data elements called "modules". A module may be either dark or light and a bar may consist of from 1 to 4 dark modules and a light space may consist of from 1 to 4 light modules. There are 95 data modules in the regular UPC symbol, 11 left margin modules and 7 right margin modules yielding a total of 113 modules for the entire symbol. Each module is nominally 0.0130 wide. The nominal size UPC symbol has an area of 1.4984 square inches (1.469 inch .times. 1.020 inch). The symbol however, may be larger or smaller than nominal, depending on the print quality of the printing press involved and the space provided for printing the symbol. Thus it may be seen that the key to the success of the UPC symbol lies in the necessity to print the symbol accurately and with clarity to enable optical or laser scanners to read the symbols.